//该JS暂时未使用
var tmpint = 1;
$(function () {
	LoadModuleByEnv($("#index_usefor").get(0));
	setTimeout(function(){
		getSetting();
    },500);
});
function drop(ev) {
	ev.preventDefault();
	var data = ev.dataTransfer.getData("ID");
	if (data == 'message') {
		$("#addautosetting").append("<tr type=\"message\"><td><label>"+tmpint+".发送报文</label>"+$("#msg_div").html()+"</td></tr>");
	}
	else if (data == 'rocketmq') {
		$("#addautosetting").append("<tr type=\"rocketmq\"><td><label>"+tmpint+".rocketMQ</label><table class=\"table table-striped table-bordered table-hover has-tickbox\" style=\"table-layout:fixed;\">"+
				"<thead><th width='40%'>地址</th><th width='20'>端口</th><th width='40%'>报文retrun对应key</th></thead>"+
				"<tbody><tr><td>172.22.1.45</td><td>12306</td><td>test_20170101</td></tr></tbody>"+
			"</table></td></tr>");
	}
	else if (data == 'mysql') {
		$("#addautosetting").append("<tr type=\"mysql\"><td><label>"+tmpint+".mysql</label><table class=\"table table-striped table-bordered table-hover has-tickbox\" style=\"table-layout:fixed;\">"+
				"<thead><th width='40%'>地址</th><th width='20'>端口</th><th width='40%'>报文retrun对应key</th></thead>"+
				"<tbody><tr><td>172.22.1.45</td><td>12306</td><td>test_20170101</td></tr></tbody>"+
			"</table></td></tr>");
	}
	else if (data == 'mongo') {
		$("#addautosetting").append("<tr type=\"mongo\"><td><label>"+tmpint+".mongoDB</label><table class=\"table table-striped table-bordered table-hover has-tickbox\" style=\"table-layout:fixed;\">"+
				"<thead><th width='40%'>地址</th><th width='20'>端口</th><th width='40%'>报文retrun对应key</th></thead>"+
				"<tbody><tr><td>172.22.1.45</td><td>12306</td><td>test_20170101</td></tr></tbody>"+
			"</table></td></tr>");
	}
	tmpint++;
	settingFunc();
}
function settingFunc() {
	editrow();
	showErr();
	selectAll();
}
function editrow () {
	$("#addautosetting table td.editable").dblclick(function () {
		ShowElement(this,$(".showinfo"),$(".addsetting_class"),validata);
	});
}

function validata() {
	var ele = $(".addsetting_class:visible");
	for (var i = 0; i < ele.length; i++) {
		ele.eq(i).bootstrapValidator({
			message : 'This value is not valid',
			feedbackIcons : {
				valid : 'glyphicon glyphicon-ok',
				invalid : 'glyphicon glyphicon-remove',
				validating : 'glyphicon glyphicon-refresh'
			},
			fields : {
				msg_sendmethod : {
					message : '请输入参数名',
					validators : {
						notEmpty : {
							message : '不能为空'
						},
					}
				},
				msg_add : {
					message : '请选择是否必选',
					validators : {
						notEmpty : {
							message : '不能为空'
						},
					}
				},
				msg_port : {
					message : '请输入类型',
					validators : {
						notEmpty : {
							message : '不能为空'
						},
						regexp: {
	                         regexp: /^[0-9]+$/,
	                         message: '请输入正整数'
	                     }
					}
				},
				msg_sendtime : {
					message : '请输入类型',
					validators : {
						notEmpty : {
							message : '不能为空'
						},
					}
				},
				msg_startnum : {
					message : '请输入类型',
					validators : {
						regexp: {
	                         regexp: /^-?\d+$/,
	                         message: '请输入整数'
	                     }
					}
				},
				msg_count : {
					message : '请输入类型',
					validators : {
						regexp: {
	                         regexp: /^-?\d+$/,
	                         message: '请输入整数'
	                     }
					}
				},
				msg_internal : {
					message : '请输入类型',
					validators : {
						notEmpty : {
							message : '不能为空'
						},
						regexp: {
	                         regexp: /^[0-9]+$/,
	                         message: '请输入正整数'
	                     }
					}
				},
				msg_text : {
					message : '请输入类型',
					validators : {
						notEmpty : {
							message : '不能为空'
						},
					}
				},
			}
		});
	}
//	$(".addsetting_class").bootstrapValidator({
//		message : 'This value is not valid',
//		feedbackIcons : {
//			valid : 'glyphicon glyphicon-ok',
//			invalid : 'glyphicon glyphicon-remove',
//			validating : 'glyphicon glyphicon-refresh'
//		},
//		fields : {
//			msg_sendmethod : {
//				message : '请输入参数名',
//				validators : {
//					notEmpty : {
//						message : '不能为空'
//					},
//				}
//			},
//			msg_add : {
//				message : '请选择是否必选',
//				validators : {
//					notEmpty : {
//						message : '不能为空'
//					},
//				}
//			},
//			msg_port : {
//				message : '请输入类型',
//				validators : {
//					notEmpty : {
//						message : '不能为空'
//					},
//				}
//			},
//			msg_sendtime : {
//				message : '请输入类型',
//				validators : {
//					notEmpty : {
//						message : '不能为空'
//					},
//				}
//			},
//			msg_internal : {
//				message : '请输入类型',
//				validators : {
//					notEmpty : {
//						message : '不能为空'
//					},
//				}
//			},
//			msg_text : {
//				message : '请输入类型',
//				validators : {
//					notEmpty : {
//						message : '不能为空'
//					},
//				}
//			},
//		}
//	});
}
function removeSelected(e) {
	var tb = $(e).closest("div.row").next("table");
	delSelected(tb);
}
function addMsg(e) {
	var tb = $(e).closest("div.row").next("table");
	tb.append("<tr>"+
		"<td align=\"center\"><input type=\"checkbox\"></td>"+
		"<td class=\"not_Empty_td editable\"></td>"+
		"<td class=\"not_Empty_td editable\"></td>"+
		"<td class=\"not_Empty_td editable\"></td>"+
		"<td class=\"not_Empty_td editable\"></td>"+
		"<td class=\"editable\"></td>"+
		"<td class=\"not_Empty_td editable\"></td>"+
		"<td class=\"not_Empty_td editable\"></td>"+
		"<td class=\"editable\"></td>"+
		"<td class=\"editable\"></td>"+
		"<td class=\"editable\"></td>"+
		"</tr>");
	editrow();
	showErr();
}
function savesetting(){
	var ele = $(".addsetting_class:visible");
	var bol = true;
	for (var i = 0; i < ele.length; i++) {
		var form = ele.data('bootstrapValidator');
		if (form != undefined) {
			form.validate();
			bol  = 	bol && form.isValid();
		}
	}
	setTimeout(function(){
		var datas;
		if (!bol) {
			return;
		}
		else {
			var notept_td = $(".not_Empty_td:visible");
			if (notept_td.length > 0) {
				dialog('error','请正确填写所有单元格',3000);
				return;
			}
			else {
				var type = $("button.active").attr("type");
				var typeint;
				if (type == "before") {
					typeint = 0;
				}
				else if (type == "after") {
					typeint = 1;
				}
				var trs = $("#addautosetting > tr");
				var jsonstr = "[";
				for (var j = 0; j < trs.length; j++) {
					var rtype = trs.eq(j).attr("type");
					var ths = trs.eq(j).find("table th");
					var datatrs = trs.eq(j).find("table tbody tr");
					var data = "";
					for (var k = 0; k < datatrs.length; k++) {
						var dd = "";
						var tds = datatrs.eq(k).find('td');
						for (var i = 1; i < ths.length; i++) {
							if (!isStrEmpt(dd)) {
								dd += ",";
							}
							dd += "\""+ths.eq(i).attr("name")+"\":\""+tds.eq(i).text()+"\"";
						}
						dd ="{" + dd + "}";
						data += dd;
					}
					jsonstr += "{\"type\":\""+rtype+"\",\"data\":["+data+"]}";
				}
				jsonstr += "]";
				if (jsonstr != "[]") {
					$.ajax({
						url : "/smarttest-frontstage/autosetting/modifySetting.action",
						data : {envid:$("#index_usefor option:selected").val(), moduleid: $("#module option:selected").val(), type:typeint, setting:jsonstr},
						method : 'POST',
						async:false,
						error:function(response,error){
							dialog('error','error'+response.status,3000);
							}, 
						success : function(data) {
						}
					});	
				}				
			}			
		}	
    },1);

}

function LoadModuleByEnv(element){
	var $e = $(element);
	var selected = $e.val();
	$.ajax({
	url : "/smarttest-frontstage/AutoInterface/getModuleByEnv.action",
	data : { id : selected },
	method : 'POST',
	success : function(data) {
		if (data.status == 200 && data.data) {
			var html = "";
			for(var i=0;i<data.data.length;i++){
				 var value = data.data[i];
				 if (i == 0) {
					 html += "<option value="+value.id+" selected=\"selected\">"
						+ value.name
						+ "</option>";
				 }
				 else {
					 html += "<option value="+value.id+">"
						+ value.name
						+ "</option>"; 
				 }
				
			}
			$("#module").empty();
			$("#module").html(html);
	     }
	}
	});	
}

function getSetting () {
	var type = $("button.active").attr("type");
	var typeint;
	if (type == "before") {
		typeint = 0;
	}
	else if (type == "after") {
		typeint = 1;
	}
	$.ajax({
		url : "/smarttest-frontstage/autosetting/getSetting.action",
		data : { envid:$("#index_usefor option:selected").val(), moduleid: $("#module option:selected").val(), type:typeint},
		method : 'GET',
		async:false,
		success : function(data) {
			var settinglist = data.data;
			if (data.data) {
				if (settinglist.length == 0) {
					$("#addautosetting").html("");
				}
				else {
					$("#addautosetting").empty();
					for (var i = 0; i < settinglist.length; i++) {
						var setmap = settinglist[i];
						for (var key in setmap)
					    {
					        if(key == 'message') {
								var e = $("#msg_div").clone();
								e.find('tbody').eq(0).html(setmap[key]);
								$("#addautosetting").append("<tr type=\"message\"><td><label>"+tmpint+".发送报文</label>"+e.html()+"</td></tr>");
							}
					    }
					}
				}			
				settingFunc();
		     }
		}
	});	
}